package JLB_Chapter_07;

// code_07_10
public class OverLoadTest {
    public static int add(int a) {
        return a;
    }
    // 定义与第一个方法参数个数不同的方法
    public static int add(int a, int b) {
        return a + b;
    }
    // 定义与第一个方法相同名称，参数类型不同的方法
    public static double add(double a, double b) {
        return a + b;
    }
    // 定义一个成员方法
    public static int add(int a, double b) {
        return (int)(a + b);
    }
    // 参数次序不同
    public static int add(double a, int b) {
        return (int)(a + b);
    }
    // 定义不定长参数
    public static int add(int... a) {
        int s = 0;
        for (int i = 0; i < a.length; i++) {
            s += a[i];
        }
        return s;
    }
    public static void main(String[] args) {
        System.out.println(add(1));
        System.out.println(add(1,2));
        System.out.println(add(1.2,3.3));
        System.out.println(add(1,3.3));
        System.out.println(add(1.2,3));
        System.out.println(add(1,2,3,4,5,6,7,8,9));
        System.out.println(add(1,2,3,4,5));
    }
}